זה הקוד של כל העמוד:
include("mysql_connection.txt");
?>
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<meta charset="utf-8" />
<title>לוח מודעות</title>
</head>
<body>
<?php
include("menu.php");
if($_COOKIE['login'])
{
print '<form action="" method="post">
<input type="text" name="content" maxlength="100" />
<input type="submit" name="submit" />
</form>
';
if($_POST['submit'])
{
if($_POST['content'])
{
date_default_timezone_set('israel');
$date = date('d/m/o h-i-s');
mysql_query("INSERT INTO `comments` (`content`, `date`, `username`, `IP`) VALUES
('".$_POST['content']."', '".$date."', '".$_COOKIE['login']."', '".$_SERVER['REMOTE_ADDR']."')");
}
else
{
print '<font color="red">לא מילאת את השדה</font>';
}
}
else
{
print '';
}
}
else
{
print 'חייב להיות מחובר בשביל לכתוב הודעה בלוח המודעות';
}
?>
<table border="1">
<tr>
<th>שם משתמש</th>
<th>תאריך</th>
<th>הודעה</th>
</tr>
<?php
$sql = mysql_query("SELECT DISTINCT * FROM `comments` ORDER BY `ID` DESC LIMIT 0 , 50");
while($row = mysql_fetch_assoc($sql))
{
$query = mysql_query("SELECT * FROM `users` WHERE `username` = '".$row['username']."'");
$row2 = mysql_fetch_array($query);
print '<tr><td><a href="all.php?id='.$row2['id'].'">'.$row['username'].'</a></td><td>'.$row['date'].'</td>/<td>'.$row['content'].'</td></tr>';
}
?>
</table>
</body>
</html>
שתי הטבלאות הם של comments ללוח עצמו זה עובד אבל הבעיה אולי בשני זה של השם משתמש. מה הבעיה ואיך
10 תשובות
שמתי לבד למשהו, אתה שלפת פעמיים נתונים, פעם אחד כ query ופעם כsql, למה?
כדי לעבור מprint לecho .
ולהתחיל להבריח תווים .
ולשנות את קובץ ההתחרות לסיומת PHP כדי ששום גולש לא יראה את הפרטים של המסד.
שלפתי פעמיים כי צריך 2 טבלאות של משתמשים ושל הודעות שפרסמו אני אישית מעדיף print מecho אם אני ישנה את הmysql לסימות php זה לא יעבוד אותו דבר בדיוק ובזה אי אפשר לראות גם.
הבעיה היא שלא נותן לקישור את הid של מי ששלח ובכלל לא נותן id גם לא של אותו אחד.
נכון שזה יעבוד אותו הדבר אבל זה יהפוך את האתר שלך לפריץ פי כמה וכמה !
אתה בעצם מנגיש את פרטי ההתחברות לכל אחד שיבקש מהשרת . אם זה סיומת PHP יוצג לו רק דף לבן ולא כל הפרטים...
ECHO הרבה יותר מהיר דרך אגב...
טוב אני אשנה לphp זה יהיה גם יותר נוח לי מצג המתכנת. אני אישית מעדיף print מכיוון שהמורה שלי השתמש בprint וecho הוא פחות אוהב אז זה הרגל אני אשנה עכשיו.תודה